Retargeting GCC Compiler for Specific Embedded System on Chips
نویسندگان
چکیده
This paper describes the High-performance C Compiler (HCC) and its specific implementation for industrial application-specific embedded System on Chips (SoCs). HCC compiler is a language C compiler based on the retargetable GCC compiler. Because of the specialized architectures and features of specific embedded SoCs, machine-dependent compiler implementation is an important and challenging work in embedded system. To quickly implement a compiler for specific embedded SoCs, compiler extension methods are proposed in HCC compiler. We extend the identifier and attribute with Abstract Syntax Tree (AST) for language-specific programming syntax of the compiler front-end, which is the syntax of the extended standard ANSI C. And then, the machine-dependent classification of assembly generation for the specific embedded SoCs is designed and implemented. After finishing the ABI (Application Binary Interface) and MD (Machine Description) of the compiler back-end, the HCC compiler is completed by retargeting GCC compiler for the application-specific embedded SoCs. These implementation methods could be referenced for other embedded chips. According to the crossing contrasts and tests with multiple compilers of the same type, conclusion can be drawn that the proposed HCC compiler has a stable performance with excellent improvement of the generated assembly codes. Key-Words: Compiler; Specific Embedded SoCs; Language-Specific; Machine-dependent; Abstract Syntax Tree; Attributes;
منابع مشابه
SAC: An Efficient Retargetable Source-to-Source Compiler for Multimedia Instruction Sets
Multimedia instruction sets allow developments of time and power efficient applications. As a consequence they are widely used in embedded systems, e.g. NEON in ARM processors, but also in general purpose processors e.g. SSEx in Intel and AMD processors and AVX for new processors). Unfortunately, it is difficult to write lowlevel code for such instruction sets, and no portability is possible. S...
متن کاملP ROCEDURES IN IEEE P 1687 Farrokh Ghani Zadegan , Urban Ingelsson , Erik Larsson Gunnar Carlsson
Modern chips may contain a large number of embedded test, debugging, configuration, and monitoring features, called instruments. An instrument and its instrument access procedures may be pre-developed and reused, and each instrument—in different chips and through the life-time of a chip—may be accessed in different ways, which requires retargeting. To address reuse and retargeting of instrument...
متن کاملCompilers for Embedded Processors
| This tutorial responds to the increasing use of embedded processors for implementing systemson-a-chip. We will provide an introduction to embedded processors and we will show that current compilers do not provide the required e ciency. We will give an overview over new compiler optimization techniques, which aim at making assembly language programming for embedded software obsolete. Finally, ...
متن کاملMELT - a Translated Domain Specific Language Embedded in the GCC Compiler
The GCC free compiler is a very large software, compiling source in several languages for many targets on various systems. It can be extended by plugins, which may take advantage of its power to provide extra specific functionality (warnings, optimizations, source refactoring or navigation) by processing various GCC internal representations (Gimple, Tree, ...). Writing plugins in C is a complex...
متن کاملEmbedded in the GCC Compiler
The GCC free compiler is a very large software, compiling source in several languages for many targets on various systems. It can be extended by plugins, which may take advantage of its power to provide extra specific functionality (warnings, optimizations, source refactoring or navigation) by processing various GCC internal representations (Gimple, Tree, ...). Writing plugins in C is a complex...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2015